package fr.afcepf.atod18.restaurants.web;



import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.ManagedProperty;
import javax.faces.bean.SessionScoped;


import fr.afcepf.atod18.restaurants.entity.Produit;
import fr.afcepf.atod18.restaurants.service.IServiceProduit;


@ManagedBean(name = "gestionProduitsMB")
@SessionScoped
public class GestionProduitsMB {
    
    @ManagedProperty(value = "#{serviceProduit}")
    private IServiceProduit serviceProduit;
    
    
    private String nom;
    private String description;
    private double prix;
    private Date dateFinValidite;
    private int quantite;
    
    private Produit newProduit;
    
    
    
    /**
     * @return the serviceProduit
     */
    public IServiceProduit getServiceProduit() {
        return serviceProduit;
    }
    /**
     * @param paramServiceProduit the serviceProduit to set
     */
    public void setServiceProduit(IServiceProduit paramServiceProduit) {
        serviceProduit = paramServiceProduit;
    }
    
    
    public String doAjouterProduit(){
        
       
        newProduit = new Produit();
        
        newProduit.setNom(nom);
        newProduit.setDescription(description);
        newProduit.setPrix(prix);
        newProduit.setQuantite(quantite);
        newProduit.setDisponible(true);
        
        Calendar cal = Calendar.getInstance();
        DateFormat format=new SimpleDateFormat("dd/MM/yyyy");
        format.format(dateFinValidite);
        cal=format.getCalendar();

        newProduit.setDateFinValidite(cal);

        serviceProduit.ajouter(newProduit);
        
        return null;
    }
    
    
    
    /**
     * @return the nom
     */
    public String getNom() {
        return nom;
    }
    /**
     * @param paramNom the nom to set
     */
    public void setNom(String paramNom) {
        nom = paramNom;
    }
    /**
     * @return the description
     */
    public String getDescription() {
        return description;
    }
    /**
     * @param paramDescription the description to set
     */
    public void setDescription(String paramDescription) {
        description = paramDescription;
    }
    /**
     * @return the prix
     */
    public double getPrix() {
        return prix;
    }
    /**
     * @param paramPrix the prix to set
     */
    public void setPrix(double paramPrix) {
        prix = paramPrix;
    }

    /**
     * @return the dateFinValidite
     */
    public Date getDateFinValidite() {
        return dateFinValidite;
    }
    /**
     * @param paramDateFinValidite the dateFinValidite to set
     */
    public void setDateFinValidite(Date paramDateFinValidite) {
        dateFinValidite = paramDateFinValidite;
    }
    /**
     * @return the quantite
     */
    public int getQuantite() {
        return quantite;
    }
    /**
     * @param paramQuantite the quantite to set
     */
    public void setQuantite(int paramQuantite) {
        quantite = paramQuantite;
    }
    
    
    
    

}
